ae a correção q ta mais pra frente do slicer(Axo q e esse o nome dele, deu arro aki, mais a da pagina 39 perfeita, burn, vlw ae cara, tipo eu ja tinha dito antes no otro tópico vc é uma lenda pdo poketibia, se orgulhe! sem vc não existiria um terco do que existe pra essa derivação de ot... tipo vc e o zeref são meus idolos ^~(Sem viadagem é claro heahushauhuhau)
- Fórum
- OTServ
- Suporte
- Tópicos Sem Resposta
- [Encerrado] [Pokemon] Dúvidas? - Pda
[Encerrado] [Pokemon] Dúvidas? - Pda
Por lucashgas, 10 de jan. de 2012 em Tópicos Sem Resposta
info
Grupo: Campones
Registrado: 02/11/08
Posts: 45
Reputação: +3
Char no Tibia: Jezhur onyan

Alguém que conseguiu fazer ai faz um post bem explicado e detalhado ou posta os arquivos já arrumando please. '-'
Consegui...no meio de tanta coisa pra arruma, quando um maninho mando troca o move1 e o cold pel odele isso bugo tudo e n tava pegano...
Vo posta os arquivo q editei no meu
Troca pelo cooldown bar.lua em data/lib
function getPlayerPokeballs(cid)
local ret = {}
local container = 0
if isCreature(cid) then
container = getPlayerSlotItem(cid, 3).uid
local myball = getPlayerSlotItem(cid, 8)
if myball.uid > 0 then
table.insert(ret, myball)
end
else
container = cid
end
if isContainer(container) and getContainerSize(container) > 0 then
for slot = 0, (getContainerSize(container) - 1) do
local item = getContainerItem(container, slot)
if isContainer(item.uid) then
local itemsbag = getPlayerPokeballs(item.uid)
if itemsbag and #itemsbag > 0 then
for i = 0, #itemsbag do
table.insert(ret, itemsbag)
end
end
elseif isPokeball(item.itemid) then
table.insert(ret, item)
end
end
end
return ret
end
function doUpdatePokemonsBar(cid)
local ret = "p#,"
local balls = getPlayerPokeballs(cid)
local times = 0
for a = 1, #balls do
times = times + 1
local item = balls[a]
local hp = math.ceil(getItemAttribute(item.uid, "hp") * 100)
local name = getItemAttribute(item.uid, "poke")
local foto = fotos[name] - 928
doItemSetAttribute(item.uid, "ballorder", times)
ret = ret..""..foto..","..name..""..times..","..hp..","
end
doPlayerSendCancel(cid, ret)
end
function getNewMoveTable(table, n)
if n == 1 and table.move1 then
return table.move1
elseif n == 2 and table.move2 then
return table.move2
elseif n == 3 and table.move3 then
return table.move3
elseif n == 4 and table.move4 then
return table.move4
elseif n == 5 and table.move5 then
return table.move5
elseif n == 6 and table.move6 then
return table.move6
elseif n == 7 and table.move7 then
return table.move7
elseif n == 8 and table.move8 then
return table.move8
elseif n == 9 and table.move9 then
return table.move9
elseif n == 10 and table.move10 then
return table.move10
elseif n == 11 and table.move11 then
return table.move11
elseif n == 12 and table.move12 then
return table.move12
else
return false
end
end
function doUpdateMoves(cid)
local summon = getCreatureSummons(cid)[1]
local ret = "12&,"
if not summon then
for a = 1, 12 do
ret = ret.."n/n,"
end
doPlayerSendCancel(cid, ret)
addEvent(doUpdateCooldowns, 100, cid)
return true
end
local ret = "12&,"
local moves = movestable[getCreatureName(summon)]
for a = 1, 12 do
local b = getNewMoveTable(moves, a)
if b then
ret = ret..""..b.name..","
else
ret = ret.."n/n,"
end
end
doPlayerSendCancel(cid, ret)
addEvent(doUpdateCooldowns, 100, cid)
end
function doUpdateCooldowns(cid)
local a = getPlayerSlotItem(cid, 8)
local ret = "12|,"
if a.uid <= 0 or #getCreatureSummons(cid) <= 0 then
for cds = 1, 12 do
ret = ret.."-1,"
end
doPlayerSendCancel(cid, ret)
return true
end
for cds = 1, 12 do
local cdzin = "move"..cds
if getCD(a.uid, cdzin) > 0 then
ret = ret..""..(getCD(a.uid, cdzin) - 1)..","
else
ret = ret.."0,"
end
end
doPlayerSendCancel(cid, ret)
end
function getBallsAttributes(item)
local t = {"boffense", "bdefense", "bagility", "bsattack",
"offense", "defense", "speed", "level", "specialattack",
"poke", "gender", "vitality", "nick", "boost", "happy", "hunger",
"burn", "burndmg", "poison", "poisondmg", "confuse", "blind",
"sleep", "hp", "description", "exp", "nextlevelexp", "transBegin",
"transLeft", "transTurn", "transOutfit", "transName", "trans",
"light", "blink", "move1", "move2", "move3", "move4", "move5",
"move6", "move7", "move8", "move9", "move10", "move11", "move12",
"ballorder", "firstpoke"}
local ret = {}
for a = 1, #t do
ret[t[a]] = getItemAttribute(item, t[a])
end
return ret
end
function doChangeBalls(cid, item1, item2)
if not isCreature(cid) then return true end
if item1.uid == item2.uid then
if #getCreatureSummons(cid) <= 0 then
doGoPokemon(cid, getPlayerSlotItem(cid, 8))
else
doReturnPokemon(cid, getCreatureSummons(cid)[1], getPlayerSlotItem(cid, 8), pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect)
end
return true
end
if item1.uid > 0 and item2.uid > 0 then
local io = getBallsAttributes(item1.uid)
local it = getBallsAttributes(item2.uid)
for a, b in pairs (io) do
if b then
doItemSetAttribute(item2.uid, a, b)
end
end
for a, b in pairs (it) do
if b then
doItemSetAttribute(item1.uid, a, b)
end
end
local id = item2.itemid
doTransformItem(item2.uid, item1.itemid)
doTransformItem(item1.uid, id)
doGoPokemon(cid, getPlayerSlotItem(cid, 8))
else
local a = doPlayerAddItem(cid, item2.itemid, true)
local b = getBallsAttributes(item2.uid)
for c, d in pairs (b) do
if d then
doItemSetAttribute(a, c, d)
end
end
doGoPokemon(cid, getPlayerSlotItem(cid, 8))
doRemoveItem(item2.uid, 1)
end
end
Esse troca pelo cdbar.lua em talkaction/script
local function ChangeBalls(cid, param, cancelequal)
local balls = getPlayerPokeballs(cid)
for a = 1, #balls do
local item = balls[a]
local name = getItemAttribute(item.uid, "poke") .. getItemAttribute(item.uid, "ballorder")
if name == param then
if cancelequal and item.uid == getPlayerSlotItem(cid, 8).uid then return true end
doChangeBalls(cid, getPlayerSlotItem(cid, 8), item)
return 0
end
end
end
function onSay(cid, words, param)
if not useKpdoDlls then return true end
if words == "!code64" then
return 0
end
if words == "/pokeread" then
if #getCreatureSummons(cid) >= 1 then
local pokemon = getCreatureSummons(cid)[1]
local pokelife = (getCreatureHealth(pokemon) / getCreatureMaxHealth(pokemon))
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "hp", pokelife)
end
doUpdatePokemonsBar(cid)
end
if words == "/goaction" then
if param == "null" then return 0 end
if os.time()-getPlayerStorageValue(cid, 64237) <= 2 then
return true
end
setPlayerStorageValue(cid, 64237, os.time())
if #getCreatureSummons(cid) >= 1 then
addEvent(doReturnPokemon, 100, cid, getCreatureSummons(cid)[1], false, pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect)
addEvent(doPlayerAddMana, 300, cid, -getPlayerMana(cid))
if param ~= getItemAttribute(getPlayerSlotItem(cid, 8).uid, "poke") .. getItemAttribute(getPlayerSlotItem(cid, 8).uid, "ballorder") then
addEvent(ChangeBalls, 1200, cid, param, true)
end
else
addEvent(ChangeBalls, 100, cid, param)
end
exhaustion.set(cid, 4444, 20)
return 0
end
return 0
end
Tava dando problemas eu baixei tudo dinv e modifiquei so esses 2 arquivo e ta pegano certinho...^^
Add o que o zeref falo mais acima tambem
Espero que funcione ai agora...vo termina de fazer os poke shiny depois posto aqui =D
info
Grupo: Barão
Registrado: 21/08/11
Posts: 202
Reputação: +41
Char no Tibia: Kaiser Demon

alguem ai ta com o msm erro q eu ?
nao da p abrir a spr e dat do client no dat editor ![]()
keria adicionar essa sprite:

p fzer um npc de battle psych, to no aguardo !
Editado Janeiro 17 por BrunooAngel
Jeffe Oq é isso que vc postou?
Muda o nome dos arquivo dat e spr pra Tibia.spr e Tibia.dat que vai funcionar.
E depois retorna pro que estava ![]()
info
Grupo: Barão
Registrado: 21/08/11
Posts: 202
Reputação: +41
Char no Tibia: Kaiser Demon

Nao vai mesmo assim @Caraacima
substitui pelo que você mandou, o bug dos 2 pokes parou mas a cd bar fca tudo ready igual '-'
acho que descobriu outro jeito de arrumar o bug de sumonar dois pokemons sem ficar checando pela mana
se der certo vou postar aqui.
Jeffe Oq é isso que vc postou?
Sao os arquivos pra barra de CD pegar certinho
É so baixar o server e o brun posto e trocar so esses 2 arquivo ai
Abre o arquivo apaga tudo q cola o que eu colokei ^^
Vai pega certinho o exaust e o tempo da barra
substitui pelo que você mandou, o bug dos 2 pokes parou mas a cd bar fca tudo ready igual '-'
acho que descobriu outro jeito de arrumar o bug de sumonar dois pokemons sem ficar checando pela mana
se der certo vou postar aqui.
Aconselho a começar dinv do zero e trocar esses 2 arquivo... o meu antes tb n tava pegano ficava ready apos eu fazer isso ai passo a pegar
Editado Janeiro 17 por jeffe000
Então galera, arrumei o bug de soltar 2 pokes.
Vá em data/talkactions/scripts:
e substitua por esse
http://sharex.xpg.co.../cdbar.rar.html
pelo tamanho do arquivo acho que não precisa de scan né? '-'
Agora falta arruma o do cdbar eu uso as spells e fica ready igual '-'
ok,vou testar
Não deu ;~~
Editado Janeiro 17 por LeGeNd_
Como eu troco o Ip do Client alguem sabe???
Como eu troco o Ip do Client alguem sabe???
Mano você tem que fazer um client pra você, tem vários tutoriais explicando como fazer.
vlw
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

@brun123
eh mano.. eh impossivel fazer um script 100% ;p -e eh muito chato achar e arrumar todos os problemas/ brechas dele hehe-
@all
oia galera... pag 42 tem meu comentario ensinando a arruma os bugs da barra de CD n mostrar os CD e de sair 2 pokes.. se seguindo akilo ms assim n der certo... n sei mais oq fazer.. talvez seja bom baixar a pasta data denovo, entrar no serv, criar uma acc, criar um char, entra no jogo com ele, pegar o poke inicial, e testar ele... ;x
Editado Janeiro 17 por Slicer








info
Grupo: Campones
Registrado: 17/01/11
Posts: 68
Reputação: +5
Tipo... essa barra de cooldown me confundiu. Afinal, o que tem que fazer pra ela funcionar? Me perdi no meio de tantos scripts...
Se alguém souber o nome da pessoa que fez a cooldown do Pokemón Flay me manda msg.
Seria mais fácil hookar alguma outra cooldown bar, porque essa coisa dos portrait, atualizar, tal, tá muito confusa.
Editado Janeiro 17 por Dudefully